Method and apparatus for generating chemical structure

ABSTRACT

A method and apparatus for generating a new chemical structure using a chemical structure generation model are provided. The method includes receiving a first descriptor of a first chemical structure, encoding the first descriptor into a latent variable using an encoder of the chemical structure generation model, generating a second descriptor by decoding the latent variable using a decoder of the chemical structure generation model, generating the second chemical structure corresponding to the second descriptor.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is based on and claims priority under 35 U.S.C. § 119to U.S. Provisional Patent Application No. 62/913,297, filed on Oct. 10,2019, in the United States Patent and Trademark Office, and KoreanPatent Application No. 10-2019-0149114, filed on Nov. 19, 2019, in theKorean Intellectual Property Office, the disclosures of which areincorporated by reference herein in their entireties.

BACKGROUND 1. Field

The present disclosure relates to a method and apparatus for generatinga chemical structure.

2. Description of Related Art

A neural network refers to a computational architecture that models abiological brain. With the advancement of neural network technologies,various types of electronic systems have analyzed input data andextracted valid information using neural networks.

Recently, extensive research has been conducted into methods ofselecting chemical structures to be used in material development usingthe neural network technologies.

When a chemical structure is expressed in the form of a character stringor a vector, a three-dimensional (3D) chemical structure is not fullyexpressed and much information is ignored. Therefore, to overcome thelimit of the form of a character string or a vector and to accuratelypredict properties and generate various chemical structures, techniquesfor using a 3D chemical structure as input data and output data aredesired.

SUMMARY

Provided are a method and apparatus for generating a chemical structure.Also, provided is a non-transitory computer-readable medium havingrecorded thereon a program for executing the method. The technicalproblems addressed by the embodiments of the present disclosure are notlimited to these as described above.

Additional aspects will be set forth in part in the description whichfollows and, in part, will be apparent from the description, or may belearned by practice of the presented embodiments of the disclosure.

According to an aspect of the disclosure, a method of generating asecond chemical structure using a chemical structure generation modelmay include receiving a first descriptor of a first chemical structure,encoding the first descriptor into a latent variable using an encoder ofthe chemical structure generation model, generating a second descriptorby decoding the latent variable using a decoder of the chemicalstructure generation model, generating the second chemical structurecorresponding to the second descriptor.

The method may include inputting the second descriptor into a validityevaluation model; receiving a reward as feedback from the validityevaluation model; and updating the chemical structure generation modelbased on the reward.

The updating of the chemical structure generation model may includeupdating a weight of the chemical structure generation model based onthe reward for the second descriptor having a first value. The validityevaluation model is configured to output the first value as the rewardbased on the second descriptor representing a valid chemical structure,and is configured to output a second value as the reward based on thesecond descriptor representing an invalid chemical structure.

Each of the first descriptor and the second descriptor may have atwo-dimensional graph form generated based on vertex information andedge information of a chemical structure.

The updating of the chemical structure generation model may includeinputting the second descriptor to a property prediction model;receiving a predicted property value as feedback from the propertyprediction model; and updating a weight of the chemical structuregeneration model based on the predicted property value.

The receiving of the reward as the feedback may include determiningwhether the second descriptor includes a certain structure included in ablacklist; inputting the second descriptor to the validity evaluationmodel based on determining that the second descriptor does not includethe certain structure included in the blacklist; and receiving thereward as the feedback from the validity evaluation model.

The chemical structure generation model may be a conditional variationalautoencoder (CVAE) model.

The validity evaluation model may be a reinforcement learning model.

The property prediction model may be a deep neural network model.

According to an aspect of the disclosure, a method of generating achemical structure using a chemical structure generation model mayinclude obtaining a random latent variable on a latent map of thechemical structure generation model; generating a descriptor by decodingthe random latent variable using a decoder of the chemical structuregeneration model; and generating the chemical structure corresponding tothe descriptor.

According to an aspect of the disclosure, an apparatus for generating asecond chemical structure using a chemical structure generation modelmay include a memory configured to store at least one program; and aprocessor configured to execute the at least one program to encode afirst descriptor of a first chemical structure into a latent variableusing an encoder of the chemical structure generation model; generate asecond descriptor by decoding the latent variable using a decoder of thechemical structure generation model; and generate the second chemicalstructure corresponding to the second descriptor.

The processor may be configured to input the second descriptor to avalidity evaluation model; receive a reward as feedback from thevalidity evaluation model; and update the chemical structure generationmodel based on the reward.

The processor may be configured to update a weight of the chemicalstructure generation model based on the reward for the second descriptorhaving a first value. The validity evaluation model may be configured tooutput the first value as the reward based on the second descriptorrepresenting a valid chemical structure, and is configured to output asecond value as the reward based on the second descriptor representingan invalid chemical structure.

Each of the first descriptor and the second descriptor may have atwo-dimensional graph form generated based on vertex information andedge information of a chemical structure.

The processor may be configured to input the second descriptor to aproperty prediction model; receive a predicted property value asfeedback from the property prediction model; and update a weight of thechemical structure generation model based on the predicted propertyvalue.

The processor may be configured to determine whether the seconddescriptor includes a certain structure included in a blacklist; inputthe second descriptor into a validity evaluation model based ondetermining that the second descriptor does not include the certainstructure included in the blacklist; and receive the reward as feedbackfrom the validity evaluation model.

According to an aspect of the disclosure, an apparatus for generating achemical structure using a chemical structure generation model mayinclude a memory configured to store at least one program; and aprocessor configured to execute the at least one program to obtain arandom latent variable on a latent map of the chemical structuregeneration model; generate a descriptor by decoding the random latentvariable using a decoder of the chemical structure generation model; andgenerate the chemical structure corresponding to the descriptor.

According to an aspect of the disclosure, a non-transitorycomputer-readable recording medium may have recorded thereon a programthat, when executed by a processor, causes the processor to receive afirst descriptor of a first chemical structure; encode the firstdescriptor into a latent variable using an encoder of a chemicalstructure generation model; generate a second descriptor by decoding thelatent variable using a decoder of the chemical structure generationmodel; and generate a second chemical structure corresponding to thesecond descriptor.

According to an aspect of the disclosure, a non-transitorycomputer-readable recording medium may have recorded thereon a programthat, when executed by a processor, causes the processor to obtain arandom latent variable on a latent map of a chemical structuregeneration model; generate a descriptor by decoding the random latentvariable using a decoder of the chemical structure generation model; andgenerate a chemical structure corresponding to the descriptor.

According to an aspect of the disclosure, a method may include receivinga first descriptor of a first chemical structure; receiving a targetproperty value; generating, using a chemical structure generation model,a second descriptor of a second chemical structure having the targetproperty value, based on the first descriptor and the target propertyvalue; determining that the second chemical structure is a validchemical structure; determining that the second descriptor is notincluded in a blacklist; and updating the chemical structure generationmodel based on determining that the second chemical structure is thevalid chemical structure and that the second descriptor is not includedin the blacklist.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other aspects, features, and advantages of certainembodiments of the disclosure will be more apparent from the followingdescription taken in conjunction with the accompanying drawings, inwhich:

FIG. 1 is a block diagram illustrating a hardware configuration of anapparatus according to an embodiment;

FIG. 2 is a diagram for describing a computation performed by a deepneural network according to an embodiment;

FIGS. 3A and 3B are diagrams for describing reinforcement learning anddeep reinforcement learning (DRL), according to an embodiment;

FIG. 4 is a diagram for describing a computation performed by aconditional variational autoencoder (CVAE) according to an embodiment;

FIG. 5 is a diagram for describing a descriptor in the form of atwo-dimensional (2D) graph, according to an embodiment;

FIG. 6 is a conceptual diagram for describing a process of generating achemical structure and predicting a property, according to anembodiment;

FIG. 7 is a diagram for describing a process of training a chemicalstructure generation model, according to an embodiment;

FIG. 8 is a diagram for describing a process of generating a newchemical structure using a chemical structure generation model,according to an embodiment; and

FIG. 9 is a flowchart of a method of generating a chemical structureusing a chemical structure generation model, according to an embodiment.

DETAILED DESCRIPTION

Reference will now be made in detail to embodiments, examples of whichare illustrated in the accompanying drawings, wherein like referencenumerals refer to like elements throughout. In this regard, the presentembodiments may have different forms and should not be construed asbeing limited to the descriptions set forth herein. Accordingly, theembodiments are merely described below, by referring to the figures, toexplain aspects. As used herein, the term “and/or” includes any and allcombinations of one or more of the associated listed items. Expressionssuch as “at least one of,” when preceding a list of elements, modify theentire list of elements and do not modify the individual elements of thelist.

The terms “according to some embodiments” or “according to anembodiment” used throughout the specification do not necessarilyindicate the same embodiment.

Some embodiments of the present disclosure may be represented byfunctional block configurations and various processing operations. Someor all of these functional blocks may be implemented using variousnumbers of hardware and/or software components that perform particularfunctions. For example, the functional blocks of the present disclosuremay be implemented using one or more microprocessors or circuits for agiven function. Also, for example, the functional blocks of the presentdisclosure may be implemented in various programming or scriptinglanguages. The functional blocks may be implemented with algorithmsrunning on one or more processors. The present disclosure may alsoemploy conventional techniques for electronic configuration, signalprocessing, and/or data processing. The terms “mechanism,” “element,”“unit,” and “configuration” may be used in a broad sense and are notlimited to mechanical and physical configurations.

Also, connection lines or connection members between the componentsillustrated in the drawings are merely illustrative of functionalconnections and/or physical or circuit connections. In actual devices,connections between the components may be represented by variousfunctional connections, physical connections, or circuit connectionsthat may be replaced or added.

Hereinafter, embodiments will be described in detail with reference tothe accompanying drawings.

FIG. 1 is a block diagram illustrating a hardware configuration of anapparatus 100 according to an embodiment.

The apparatus 100 may be implemented using various types of devices suchas a personal computer (PC), a server device, a mobile device, and anembedded device. Examples of the apparatus 100 may include, but are notlimited to, a smartphone, a tablet device, an augmented reality (AR)device, an Internet of things (IoT) device, an autonomous vehicle, arobot, a medical device, and the like, which perform speech recognition,image recognition, image classification, and the like, using a neuralnetwork. Furthermore, the apparatus 100 may correspond to a dedicatedhardware (HW) accelerator mounted on the devices described above. Theapparatus 100 may be a hardware accelerator, such as a neural processingunit (NPU), a tensor processing unit (TPU), or a neural engine, which isa dedicated module for driving a neural network, but is not limitedthereto.

Referring to FIG. 1, the apparatus 100 includes a processor 110 and amemory 120. FIG. 1 only illustrates components of the apparatus 100related to the embodiments of the present disclosure. Thus, it isobvious to those skilled in the art that the apparatus 100 may furtherinclude any other general-purpose components in addition to thecomponents shown in FIG. 1.

The processor 110 controls the overall function for driving theapparatus 100. For example, the processor 110 controls all operations ofthe apparatus 100 by executing programs stored in the memory 120 of theapparatus 100. The processor 110 may be implemented as a centralprocessing unit (CPU), a graphics processing unit (GPU), an applicationprocessor (AP), or the like, in the apparatus 100, without being limitedthereto.

The memory 120 is a hardware component that stores a variety of dataprocessed in the apparatus 100. For example, the memory 120 may storedata processed by, or to be processed by, the apparatus 100. The memory120 may also store applications, drivers, and the like, to be driven bythe apparatus 100. The memory 120 may include random access memory (RAM)such as dynamic random access memory (DRAM) or static random accessmemory (SRAM), read-only memory (ROM), electrically erasableprogrammable read-only memory (EEPROM), CD-ROM, Blu-ray, or otheroptical disk storage, a hard disk drive (HDD), a solid state drive(SSD), or flash memory.

The memory 120 stores a chemical structure and a property value, whichmatch each other as one set. The apparatus 100 may read or write achemical structure and a property value corresponding to the chemicalstructure from or to the memory 120.

A chemical structure refers to an atomic level structure of a substance.A chemical structure may have a character string (one-dimensional) formin a simple format. For example, a chemical structure may be expressedas simplified molecular-input line-entry system (SMILES) code, smilesarbitrary target specification (SMARTS) code, international chemicalidentifier (InChi) code, or the like.

A chemical structure may be a structural formula based on the bondbetween atoms. A chemical structure includes a vertex representing anatom and an edge representing the bond between atoms. In an embodiment,a chemical structure may be expressed in a two-dimensional (2D) graphform.

A property value refers to a characteristic possessed by a substance andmay be a real number measured through an experiment or calculatedthrough a simulation. For example, based on a substance being a displaymaterial, a property value may be a transmission wavelength, emissionwavelength, or the like, with respect to light. Based on a substancebeing a battery material, a property value may be a voltage. As comparedto a descriptor, calculation of a property value may require morecomplex simulations and time.

The processor 110 may drive a chemical structure generation model, avalidity evaluation model, and a property prediction model.

The processor 110 may generate a new chemical structure, which is notpreviously stored in a database, using the chemical structure generationmodel. In an embodiment, the chemical structure generation model may bea conditional variational autoencoder (CVAE) model.

In detail, the processor 110 may input a first descriptor of aparticular chemical structure to the chemical structure generationmodel. A descriptor of a chemical structure is high-dimensional data. Anencoder of the chemical structure generation model may encode adescriptor into a low-dimensional latent variable, and a decoder of thechemical structure generation model may decode the latent variable,thereby outputting a high-dimensional second descriptor. Based on thefirst descriptor input to the chemical structure generation model beingdifferent from the second descriptor output from the chemical structuregeneration model, a chemical structure corresponding to the seconddescriptor may be a new chemical structure.

In addition, the processor 110 may determine a valid chemical structureand an invalid chemical structure using the validity evaluation model.In an embodiment, the validity evaluation model may be a reinforcementlearning model.

In detail, the processor 110 may input a descriptor of a new chemicalstructure generated from the chemical structure generation model to thevalidity evaluation model. In an embodiment, the validity evaluationmodel may identify the syntax of the descriptor of the new chemicalstructure using a library and determine whether the new chemicalstructure is valid. For example, the library may be an Rdkit library butis not limited thereto.

The validity evaluation model may output different rewards according towhether the new chemical structure is valid. A reward output from thevalidity evaluation model may be used to update the decoder of thechemical structure generation model.

Also, the processor 110 may predict a property value of a new chemicalstructure using the property prediction model. In an embodiment, theproperty prediction model may be a deep neural network model. In detail,the processor 110 may input a descriptor of a chemical structure to theproperty prediction model. The property prediction model may output aproperty value based on the descriptor input thereto.

The apparatus 100 may further include a user interface (not shown). Theuser interface refers to a unit used to input data for controlling theapparatus 100. Examples of the user interface may include, but are notlimited to, a key pad, a dome switch, a touch pad (e.g., a capacitiveoverlay type, a resistive overlay type, an infrared beam type, a surfaceacoustic wave type, an integral strain gauge type, a piezo electrictype, or the like), a jog wheel, and a jog switch.

Hereinafter, methods of generating a chemical structure by using theapparatus 100 and evaluating the generated chemical structure will bedescribed in detail. The methods to be described below may be performedby the processor 110 and the memory 120 of the apparatus 100.

FIG. 2 is a diagram for describing a computation performed by a deepneural network 200 according to an embodiment.

Referring to FIG. 2, the deep neural network 200 may have a structureincluding an input layer, hidden layers, and an output layer. The deepneural network 220 may perform a computation based on received inputdata (e.g., I₁ and I₂), and generate output data (e.g., O₁ and O₂) basedon a computation result.

For example, as illustrated in FIG. 2, the deep neural network 200 mayinclude an input layer (Layer 1), two hidden layers (Layer 2 and Layer3), and an output layer (Layer 4). Because the deep neural network 200may include many layers to process valid information, the deep neuralnetwork 200 may process more complex data as compared to a neuralnetwork including a single layer. Although the deep neural network 200illustrated in FIG. 2 includes 4 layers, the deep neural network 200 mayalso include more or fewer layers and more or fewer channels than thoseillustrated therein. That is, the deep neural network 200 may havevarious structures of layers different from that illustrated in FIG. 2.

Each of the layers included in the deep neural network 200 may have aplurality of channels. The channels may correspond to a plurality ofartificial nodes known as neurons, processing elements (PEs), units, orthe like. For example, as illustrated in FIG. 2, Layer 1 may include twochannels (nodes), and Layers 2 and 3 may each include three channels.However, each of the layers included in the deep neural network 200 mayhave various numbers of channels (nodes).

The channels included in each of the layers of the deep neural network200 may be interconnected to process data. For example, a channel mayperform a computation of data received from channels of one layer, andoutput a computation result to channels of another layer.

Input and output of each channel may be referred to as input activationand output activation. That is, an activation may be an output of onechannel, or a parameter corresponding to an input of channels includedin a successive layer. Each of the channels may determine an activationthereof based on activations and weights received from channels includedin a previous layer. The weight is a parameter used to calculate theoutput activation of each channel and may be a value assigned to therelationship between channels.

Each of the channels may be processed by a computational unit or aprocessing element that receives an input and outputs an outputactivation. The input-output of each channel may be mapped. For example,when σ is an activation function, w_(j,k) ^(i) is a weight from a k-thchannel included in an (i−1)-th layer to a j-th channel included in ani-th layer, b_(j) ^(i) is a bias of the j-th channel included in thei-th layer, and a_(k) ^(i−1) an activation of the j-th channel of thei-th layer, an activation a_(j) ^(i) may be calculated using Expression1 below.

a _(j) ^(i)=σ(Σ_(k)(w _(j,k) ^(i) ×a _(k) ^(i−1))+b _(j) ^(i))  Expression 1

As illustrated in FIG. 2, an activation of a first channel CH1 of asecond layer, i.e., Layer 2, may be expressed as a₁ ² In addition, a₁ ²may have a value of a₁ ²=σ(w_(1,1) ²×a₁ ¹+w_(1,2) ²×a₂ ¹+b₁ ²) accordingto Expression 1. However, Expression 1 described above is an example fordescribing the activation and the weight used to process data in thedeep neural network 200 and the embodiment is not limited thereto. Theactivation may be a value obtained by inputting the sum of activationsreceived from the previous layer to an activation function andprocessing the result with a rectified linear unit (ReLU).

In an embodiment, the deep neural network 200 may determine a factordefining the relationship between a descriptor and a property vialearning using descriptors and property values. That is, among Layers 1to 4 constituting the deep neural network 200, the descriptorcorresponds to the input layer (Layer 1), the property value correspondsto the output layer (Layer 4), and the factor corresponds to at leastone hidden layer (Layer 2 and/or Layer 3).

The deep neural network 200 may perform a computation on a descriptor ofa chemical structure received in an input layer and may output aproperty value in an output layer.

FIGS. 3A and 3B are diagrams for describing reinforcement learning anddeep reinforcement learning (DRL), according to an embodiment.

Referring to FIG. 3A, a reinforcement learning model 310 may includeelements such as an agent, a state, an environment, an action, and areward.

An agent refers to an entity which performs actions. An action refers toany moves that an agent can make. A state is an agent's concrete andimmediate situation perceived by the agent. An environment receives anagent's current state and action and outputs a reward and a next state.A reward is a feedback by which the success or failure of an agent'saction is measured.

A policy is a strategy that an agent employs to determine a next actionbased on a current state. An agent chooses an action that may give thehighest reward in a certain state.

Q-value refers to an expected reward for policy π in a current state.Q^(π)(s, a) refers to a long-term return of an action “a” in a currentstate “s” based on the action “a” being taken under the policy π.Q-value maps state-action pairs to rewards.

The reinforcement learning model 310 refers to an algorithm by which anagent determines a policy defined by a series of actions maximizing thecumulative reward.

Referring to FIG. 3B, a DRL model 320 is an agent that learns a methodof mapping state-action pairs to rewards.

Similar to other deep neural network models, the DRL model 320 also usescorrelation coefficients to approximate the function relating inputs tooutputs. The DRL model 320 performs learning to find a a more accuratecorrelation coefficient or weight by iteratively adjusting the weightalong a gradient to produce less error.

In the DRL model 320, a convolutional network may be used to recognizean agent's state. The convolutional network of the DRL model 320determines the rank of actions that can be performed by an agent in acurrent state.

The DRL model 320 may adjust weights and improve the interpretation ofstate-action pairs using the difference between expected reward andground-truth reward based on feedback from an environment.

FIG. 4 is a diagram for describing a computation performed by a CVAE 400according to an embodiment.

Referring to FIG. 4, the CVAE 400 has a structure that includes an inputlayer, an encoder, a decoder, and an output layer. High-dimensional datais used as input data to the input layer of the CVAE 400, and theencoder performs encoding of converting the high-dimensional data into alow-dimensional latent variable “z”. In an embodiment, the latentvariable “z” follows a normal distribution with a mean μ and a varianceσ, and may be two-dimensional to fifty-dimensional data. The decoderdecodes the low-dimensional latent variable “z” such that newhigh-dimensional data that is not present in a database may be outputfrom the output layer.

The latent variable “z” may be mapped to a latent map. Based on apredetermined value z′ included in a region of the latent map, to whichthe latent variable z is not mapped, being input to and decoded by thedecoder, new data that is not in the database may be generated in theoutput layer. Alternatively, based on the latent variable “z” beinginput to and decoded by the decoder, new data that is not in thedatabase may be generated in the output layer according to the trainedlevel of the decoder.

The first descriptor of the particular chemical structure may be inputto the input layer of the CVAE 400. A descriptor of a chemical structureis high-dimensional data. The encoder may encode the descriptor into alow-dimensional latent variable, and the decoder of the chemicalstructure generation model may decode the latent variable, therebyoutputting a high-dimensional second descriptor. Based on the firstdescriptor input to the chemical structure generation model beingdifferent from the second descriptor output from the chemical structuregeneration model, a chemical structure corresponding to the seconddescriptor may be a new chemical structure.

FIG. 5 is a diagram for describing a descriptor in the form of a 2Dgraph, according to an embodiment.

Referring to FIG. 5, a chemical structure 510 may include a vertexrepresenting an atom and an edge representing the bond between atoms. Adescriptor of the chemical structure 510 may have a 2D graph form 520,which is generated based on vertex information and edge information.

In detail, vertex information may be a one-hot vector for each of theatoms forming a chemical structure. For example, a one-hot vector for acarbon atom, C, of the chemical structure 510 may be “00010”, and aone-hot vector for a nitrogen atom, N, of the chemical structure 510 maybe “00001”.

Edge information may be bond information between adjacent atoms in achemical structure. For example, since carbon corresponding to vertexnumber 1 and nitrogen corresponding to vertex number 2 are involved in asingle bond, a first cell 521 has a value of 1. Because carboncorresponding to vertex number 1 and carbon corresponding to vertexnumber 6 are involved in a double bond, a second cell 522 has a value of2.

In an embodiment, a descriptor of a chemical structure, which is used asinput/output data in a chemical structure generation model, a validityevaluation model, and a property prediction model, may have the 2D graphform 520.

FIG. 6 is a conceptual diagram for describing a process of generating achemical structure and predicting a property, according to anembodiment.

FIG. 6 illustrates a property prediction model 620 and a chemicalstructure generation model 610.

A descriptor used as input data in the chemical structure generationmodel 610 and the property prediction model 620 may have a characterstring (one-dimensional) form in a simple format. For example, achemical structure may be expressed as SMILES code, SMARTS code, InChicode, or the like. For example, a structural formula may be expressed asSMILES code as shown in Expression 2 or as SMARTS code as shown inExpression 3.

OC1=C(C=C2C=CNC2=C1)C1=C(C=CC=C1)C1=CC2=C(NC=C2)C=C1   Expression 2

[#6]−1−[#6]=[#6]−[#6]−2=[#6]−1−[#6]−1=[#6](−[#6]−[#6]=[#7]−[#6]−1)−[#7]=[#6]−2  Expression 3

Alternatively, a descriptor may be a structural formula based on thebond between atoms. In an embodiment, a descriptor may be expressed in a2D graph form, which is generated based on vertex information and edgeinformation. A descriptor of a 2D graph form has been described withreference to FIG. 5 above, and thus, detailed descriptions thereof willbe omitted.

A descriptor of a particular chemical structure may be input to thechemical structure generation model 610. The descriptor may be encodedinto a latent variable, and the latent variable may be mapped to alatent map. In an embodiment, a latent map is visualizable coordinatesto which a 2D latent variable is mapped. Because latent variables gatheraccording to a structure type in a latent map, similarity between thelatent variables may be visualized and identified using the latent map.

A latent variable mapped to a latent map may be decoded and output as adescriptor. A descriptor input to the chemical structure generationmodel 610 may be different from a descriptor output from the chemicalstructure generation model 610. Based on an input descriptor beingdifferent from an output descriptor, an input chemical structure isdifferent from an output chemical structure.

A descriptor output from the chemical structure generation model 610 maybe input to the property prediction model 620. Based on a descriptorinput to the chemical structure generation model 610 being differentfrom a descriptor output from the chemical structure generation model610, the property prediction model 620 may output a property value of anew chemical structure, which is different from the particular chemicalstructure, by using, as input data, the descriptor output from thechemical structure generation model 610.

FIG. 7 is a diagram for describing a process of training a chemicalstructure generation model, according to an embodiment.

An apparatus 700 for training a chemical structure may include achemical structure generation model 710, a validity evaluation model720, and a property prediction model 730. Although it is illustrated inFIG. 7 that the chemical structure generation model 710, the validityevaluation model 720, and the property prediction model 730 are includedin one apparatus 700, at least part of any one of the chemical structuregeneration model 710, the validity evaluation model 720, and theproperty prediction model 730 may be mounted on another independentapparatus.

The chemical structure generation model 710 may generate a new chemicalstructure that is not previously stored in a database. In an embodiment,the chemical structure generation model 710 may be a CVAE model.

In detail, the chemical structure generation model 710 may receive afirst descriptor 711 of a chemical structure 701 as input. The firstdescriptor 711 is high-dimensional data. The chemical structuregeneration model 710 may encode the first descriptor 711 into alow-dimensional latent variable using an encoder. The chemical structuregeneration model 710 may also output a second descriptor 712, which ishigh-dimensional, by decoding the latent variable using a decoder.

As shown in FIG. 7, the first descriptor 711 and the second descriptor712 may have a 2D graph form, which is generated based on vertexinformation and edge information of the chemical structure 701.

The first descriptor 711 input to the chemical structure generationmodel 710 may be different from or the same as the second descriptor 712output from the chemical structure generation model 710. Based on thefirst descriptor 711 being different from the second descriptor 712, achemical structure corresponding to the second descriptor 712 may be anew chemical structure that is not previously stored in a database.Hereinafter, it is assumed that the first descriptor 711 is differentfrom the second descriptor 712.

The validity evaluation model 720 may determine a valid chemicalstructure and an invalid chemical structure. A valid chemical structuremay refer to a chemical structure that may exist in the real world. Forexample, each of the atoms included in a chemical structure is bonded toan adjacent atom in a limited way according to the number of electrons.The validity evaluation model 720 may determine a chemical structuresatisfying the limitation to be valid. However, a method by which thevalidity evaluation model 720 determines the validity of a chemicalstructure is not limited thereto. In an embodiment, the validityevaluation model 720 may be a reinforcement learning model.

The validity evaluation model 720 may receive the second descriptor 712output from the chemical structure generation model 710 as an input. Thevalidity evaluation model 720 may output a reward 721 based on thesecond descriptor 712.

In detail, based on the second descriptor 712 representing a validchemical structure, the validity evaluation model 720 may output a firstvalue as the reward 721. Alternatively, based on the second descriptor712 representing an invalid chemical structure, the validity evaluationmodel 720 may output a second value as the reward 721. For example, thefirst value may be “1” and the second value may be “2”.

The chemical structure generation model 710 may receive the reward 721output from the validity evaluation model 720 as feedback, and determinewhether to update the weight thereof based on the reward 721.

In an embodiment, the chemical structure generation model 710 may betrained by updating the weight thereof based on the reward 721 receivedfrom the validity evaluation model 720 being the first value. In otherwords, the chemical structure generation model 710 may update the weightthereof based on the second descriptor 712 representing a valid chemicalstructure, and may refrain from updating the weight thereof based on thesecond descriptor 712 representing an invalid chemical structure.

In an embodiment, the training efficiency of the chemical structuregeneration model 710 may be increased by training the chemical structuregeneration model 710 using only descriptors that represent validchemical structures.

The second descriptor 712 output from the chemical structure generationmodel 710 through the above-described process may be used as input dataof the property prediction model 730. The property prediction model 730may predict a property value of a new chemical structure. In anembodiment, the property prediction model 730 may be a deep neuralnetwork model. In detail, the property prediction model 730 may receivethe second descriptor 712 as input and perform an operation on thesecond descriptor 712, thereby outputting a predicted property value 731for the second descriptor 712.

The chemical structure generation model 710 may receive the predictedproperty value 731 output from the property prediction model 730 asfeedback and determine whether to update the weight thereof based on thepredicted property value 731.

In an embodiment, the chemical structure generation model 710 may betrained by updating the weight thereof based on the predicted propertyvalue 731 received from the property prediction model 730 being equal toor greater than a target property value. In other words, in anembodiment, the training efficiency of the chemical structure generationmodel 710 may be increased by training the chemical structure generationmodel 710 using descriptors that represent chemical structures havingthe predicted property value 731 that is equal to or greater than atarget property value.

In an embodiment, the apparatus 700 may further include a blacklistverification model (not shown). The blacklist refers to a list ofpartial structures that are unfavorable to synthesis and performance(e.g., blacklisted structures). A chemical structure has a propertyvalue for a particular property (e.g., a transmission wavelength or anemission wavelength). The chemical structure generation model 710 maygenerate a new chemical structure that has a property value matching atarget property value (e.g., an emission wavelength λ=350 nm). At thistime, based on a partial structure corresponding to a blacklistedstructure included in the blacklist being included in the new chemicalstructure, the probability of the property value of the new chemicalstructure not matching the target property value increases.

For example, the blacklist may be include parameters such as “inclusionof a ring structure having at most four angles,” “at least six zeros,”“inclusion of other atoms than C, O, and N,” “inclusion of a ringstructure having at least seven angles,” or the like. However, theblacklist is not limited to the above examples and may vary with desiredsynthesis and performance.

The blacklist verification model may receive the second descriptor 712output from the chemical structure generation model 710 as input. Theblacklist verification model may determine whether the second descriptor712 includes a certain structure included in the blacklist.

Based on the blacklist verification model determining that the seconddescriptor 712 does not include the certain structure included in theblacklist, the blacklist verification model may transmit the seconddescriptor 712 to the validity evaluation model 720. In other words, inan embodiment, descriptors including the certain structures included inthe blacklist are excluded from the training of the chemical structuregeneration model 710, and accordingly, the training efficiency of thechemical structure generation model 710 may be increased.

FIG. 8 is a diagram for describing a process of generating a newchemical structure using a chemical structure generation model,according to an embodiment.

Referring to FIG. 8, an apparatus 800 for generating a chemicalstructure may include a chemical structure generation model 810. Thechemical structure generation model 810 may be a model that has beentrained through the processes described with reference to FIG. 7. Thechemical structure generation model 810 may generate a new chemicalstructure that is not previously stored in a database. In an embodiment,the chemical structure generation model 810 may be a CVAE model.

In an embodiment, the chemical structure generation model 810 mayreceive a first descriptor 811 of a chemical structure 801 as input. Thefirst descriptor 811 is high-dimensional data. The chemical structuregeneration model 810 may encode the first descriptor 811 into alow-dimensional latent variable using an encoder. The chemical structuregeneration model 810 may output a second descriptor 812, which ishigh-dimensional, by decoding the low-dimensional latent variable usinga decoder.

The first descriptor 811 input to the chemical structure generationmodel 810 may be different from or the same as the second descriptor 812output from the chemical structure generation model 810. Based on thefirst descriptor 811 being different from the second descriptor 812, achemical structure corresponding to the second descriptor 812 may be anew chemical structure that is not previously stored in a database.

In an embodiment, the apparatus 800 may obtain a random latent variableon a latent map of the chemical structure generation model 810. Latentvariables having a similar structure gather on the latent map. Based ona new chemical structure having a particular structure being generated,the apparatus 800 may obtain a random latent variable in a region, inwhich latent variables having the particular structure gather on thelatent map. The apparatus 800 may generate a new chemical structure bydecoding the ransom latent variable using the decoder.

The chemical structure generation model 810 may have received, asfeedback, a reward from the validity evaluation model 720 described withreference to FIG. 7 and may have been trained, and therefore, a newvalid chemical structure may be generated using the chemical structuregeneration model 810.

The chemical structure generation model 810 may also receive a rewardfrom the validity evaluation model 720 as feedback during an inferenceprocess such that a weight of the chemical structure generation model810 may be updated.

A validity evaluation model 820 may receive the second descriptor 812output from the chemical structure generation model 810 as input. Thevalidity evaluation model 820 may output a reward 821 based on thesecond descriptor 812.

Based on the second descriptor 812 representing a valid chemicalstructure, the validity evaluation model 820 may output a first value asthe reward 821. Alternatively, based on the second descriptor 812representing an invalid chemical structure, the validity evaluationmodel 820 may output a second value as the reward 821.

The chemical structure generation model 810 may receive the reward 821output from the validity evaluation model 820 as feedback, and determinewhether to update the weight thereof based on the reward 821.

In an embodiment, the chemical structure generation model 810 may updatethe weight thereof based on the reward 821 received from the validityevaluation model 820 having the first value. In other words, thechemical structure generation model 810 may update the weight thereofbased on the second descriptor 812 representing a valid chemicalstructure; and may refrain from updating the weight thereof based on thesecond descriptor 812 representing an invalid chemical structure.

In an embodiment, the weight of the chemical structure generation model810 is updated using the validity evaluation model 820 during aninference process as well as a training process, and accordingly, theinference efficiency of the chemical structure generation model 810 maybe increased.

In addition, at least one selected from the property prediction model730 and the blacklist verification model, which have been describedabove with reference to FIG. 7, may be used during the inference processof the chemical structure generation model 810, thereby increasing theinference efficiency of the chemical structure generation model 810.

FIG. 9 is a flowchart of a method of generating a chemical structureusing a chemical structure generation model, according to an embodiment.The method of FIG. 9 is related to the embodiments described above withreference to the drawings. Thus, although omitted in the followingdescription, the content described above with reference to the drawingsmay also be applied to the method of FIG. 9.

Referring to FIG. 9, a chemical structure generation model may receive afirst descriptor of a certain chemical structure as input in operation910.

The chemical structure generation model may be a CVAE model including anencoder and a decoder.

In an embodiment, descriptors (e.g., a first descriptor and a seconddescriptor) may have a 2D graph form. In detail, descriptors may have a2D graph form that is generated based on vertex information and edgeinformation of a chemical structure.

The vertex information may be a one-hot vector for each of the atomsforming a chemical structure, and the edge information may be bondinformation between adjacent atoms in the chemical structure.

The chemical structure generation model may encode the first descriptorinto a latent variable using the encoder in operation 920.

The chemical structure generation model may encode the high-dimensionalfirst descriptor into the low-dimensional latent variable using theencoder. The latent variable may be mapped to a latent map. In anembodiment, the latent map includes visualizable coordinates to which a2D latent variable is mapped. Because latent variables gather accordingto a structure type in a latent map, similarity between the latentvariables may be visualized and identified using the latent map.

The chemical structure generation model may generate a second descriptorby decoding the latent variable using the decoder in operation 930.

The chemical structure generation model may output the high-dimensionalsecond descriptor by decoding the latent variable using the decoder.

The first descriptor input to the chemical structure generation modelmay be different from the second descriptor output from the chemicalstructure generation model. Based on the first descriptor beingdifferent from the second descriptor, an input chemical structure may bedifferent from an output chemical structure. Based on the firstdescriptor being different from the second descriptor, a chemicalstructure corresponding to the second descriptor may be a new chemicalstructure that is not previously stored in a database.

The chemical structure generation model may generate a new chemicalstructure corresponding to the second descriptor in operation 940.

Based on the second descriptor being different from the firstdescriptor, which is input to the chemical structure generation model inoperation 910, the chemical structure generation model may generate anew chemical structure that is not in the database.

Parameters included in the chemical structure generation model may beupdated during an inference process using the chemical structuregeneration model. In an embodiment, during an inference processing usingthe chemical structure generation model, the parameters of the chemicalstructure generation model may be updated through reinforcementlearning.

In detail, the chemical structure generation model may input the seconddescriptor to a validity evaluation model, and receive a reward from thevalidity evaluation model as feedback. The validity evaluation model maydetermine a valid chemical structure and an invalid chemical structure.The validity evaluation model may be a reinforcement learning model.

For example, based on the second descriptor representing a validchemical structure, the chemical structure generation model may receivea reward corresponding to a first value from the validity evaluationmodel as feedback. Alternatively, based on the second descriptorrepresenting an invalid chemical structure, the chemical structuregeneration model may receive a reward corresponding to a second valuefrom the validity evaluation model as feedback.

The chemical structure generation model may also update the weightthereof based on the reward.

The chemical structure generation model may update the weight thereofbased on the second descriptor received from the validity evaluationmodel representing a valid chemical structure; and may refrain fromupdating the weight thereof based on the second descriptor representingan invalid chemical structure.

In detail, the chemical structure generation model may update the weightthereof based on the reward received from the validity evaluation modelhaving the first value; and may refrain from updating the weight thereofbased on the reward received from the validity evaluation model havingthe second value. In other words, the chemical structure generationmodel may be trained by updating the weight thereof based on the rewardreceived from the validity evaluation model having the first value.

In an embodiment, the parameters of the chemical structure generationmodel are updated using descriptors representing a valid chemicalstructure, and therefore, the training and inference efficiencies of thechemical structure generation model may be increased.

In an embodiment, the chemical structure generation model may input thesecond descriptor to a property prediction model, and receive apredicted property value from the property prediction model as feedback.The property prediction model may be a deep neural network model. Thechemical structure generation model may update the weight thereof basedon the predicted property value.

In detail, the chemical structure generation model may update the weightthereof based on the predicted property value received from the propertyprediction model being equal to or greater than a target property value.In other words, in an embodiment, the parameters of the chemicalstructure generation model are updated using descriptors representing achemical structure having the predicted property value that is equal toor greater than the target property value, and therefore, the trainingand inference efficiencies of the chemical structure generation modelmay be increased.

In an embodiment, the chemical structure generation model may determinewhether the second descriptor includes a certain structure included in ablacklist. The chemical structure generation model may transmit thesecond descriptor to the validity evaluation model based on the chemicalstructure generation model determining that the second descriptor doesnot include the certain structures included in the blacklist. In otherwords, in an embodiment, descriptors including certain structuresincluded in the blacklist are excluded from the updating of theparameters of the chemical structure generation model, and therefore,the training and inference efficiencies of the chemical structuregeneration model may be increased.

The aforementioned embodiments may be implemented by a non-transitorycomputer-readable medium including instructions executable by acomputer, such as a program module, executed by a computer. Thenon-transitory computer-readable medium may be any recording medium thatmay be accessed by a computer and may include volatile and non-volatilemedia and removable and non-removable media. Also, the non-transitorycomputer-readable medium may include computer storage media andcommunication media. The computer storage media may include volatile andnon-volatile and removable and non-removable media implemented using anymethod or technology to store information such as computer-readableinstructions, data structures, program modules, or other data. Thecommunication media may include computer-readable instructions, datastructures, program modules, or other data in a modulated data signal,or other transport mechanisms and include any type of delivery media.

In addition, throughout the specification, the term “unit” may refer toa hardware component such as a processor or a circuit and/or a softwarecomponent executed by the hardware component such as a processor.

According to the embodiments, a chemical structure generation model istrained using descriptors that represent a valid chemical structure, andtherefore, the training and inference efficiencies of the chemicalstructure generation model may be increased.

It should be understood that embodiments described herein should beconsidered in a descriptive sense and not for purposes of limitation.Descriptions of features or aspects within each embodiment shouldtypically be considered as available for other similar features oraspects in other embodiments. While one or more embodiments have beendescribed with reference to the figures, it will be understood by thoseof ordinary skill in the art that various changes in form and detailsmay be made therein without departing from the spirit and scope asdefined by the following claims.

What is claimed is:
 1. A method of generating a second chemicalstructure using a chemical structure generation model, the methodcomprising: receiving a first descriptor of a first chemical structure;encoding the first descriptor into a latent variable using an encoder ofthe chemical structure generation model; generating a second descriptorby decoding the latent variable using a decoder of the chemicalstructure generation model; and generating the second chemical structurecorresponding to the second descriptor.
 2. The method of claim 1,further comprising: inputting the second descriptor into a validityevaluation model; receiving a reward as feedback from the validityevaluation model; and updating the chemical structure generation modelbased on the reward.
 3. The method of claim 2, wherein the updating ofthe chemical structure generation model comprises: updating a weight ofthe chemical structure generation model based on the reward for thesecond descriptor having a first value, and wherein the validityevaluation model is configured to output the first value as the rewardbased on the second descriptor representing a valid chemical structure,and is configured to output a second value as the reward based on thesecond descriptor representing an invalid chemical structure.
 4. Themethod of claim 1, wherein each of the first descriptor and the seconddescriptor has a two-dimensional graph form generated based on vertexinformation and edge information of a chemical structure.
 5. The methodof claim 2, wherein the updating of the chemical structure generationmodel comprises: inputting the second descriptor to a propertyprediction model; receiving a predicted property value as feedback fromthe property prediction model; and updating a weight of the chemicalstructure generation model based on the predicted property value.
 6. Themethod of claim 2, wherein the receiving of the reward as the feedbackcomprises: determining whether the second descriptor includes a certainstructure included in a blacklist; inputting the second descriptor tothe validity evaluation model based on determining that the seconddescriptor does not include the certain structure included in theblacklist; and receiving the reward as the feedback from the validityevaluation model.
 7. The method of claim 1, wherein the chemicalstructure generation model is a conditional variational autoencoder(CVAE) model.
 8. The method of claim 2, wherein the validity evaluationmodel is a reinforcement learning model.
 9. The method of claim 5,wherein the property prediction model is a deep neural network model.10. A method of generating a chemical structure using a chemicalstructure generation model, the method comprising: obtaining a randomlatent variable on a latent map of the chemical structure generationmodel; generating a descriptor by decoding the random latent variableusing a decoder of the chemical structure generation model; andgenerating the chemical structure corresponding to the descriptor. 11.An apparatus for generating a second chemical structure using a chemicalstructure generation model, the apparatus comprising: a memoryconfigured to store at least one program; and a processor configured toexecute the at least one program to: encode a first descriptor of afirst chemical structure into a latent variable using an encoder of thechemical structure generation model; generate a second descriptor bydecoding the latent variable using a decoder of the chemical structuregeneration model; and generate the second chemical structurecorresponding to the second descriptor.
 12. The apparatus of claim 11,wherein the processor is further configured to: input the seconddescriptor to a validity evaluation model; receive a reward as feedbackfrom the validity evaluation model; and update the chemical structuregeneration model based on the reward.
 13. The apparatus of claim 12,wherein the processor is further configured to: update a weight of thechemical structure generation model based on the reward for the seconddescriptor having a first value, and wherein the validity evaluationmodel is configured to output the first value as the reward based on thesecond descriptor representing a valid chemical structure, and isconfigured to output a second value as the reward based on the seconddescriptor representing an invalid chemical structure.
 14. The apparatusof claim 11, wherein each of the first descriptor and the seconddescriptor has a two-dimensional graph form generated based on vertexinformation and edge information of a chemical structure.
 15. Theapparatus of claim 11, wherein the processor is further configured to:input the second descriptor to a property prediction model; receive apredicted property value as feedback from the property prediction model;and update a weight of the chemical structure generation model based onthe predicted property value.
 16. The apparatus of claim 11, wherein theprocessor is further configured to: determine whether the seconddescriptor includes a certain structure included in a blacklist; inputthe second descriptor into a validity evaluation model based ondetermining that the second descriptor does not include the certainstructure included in the blacklist; and receive the reward as feedbackfrom the validity evaluation model.
 17. An apparatus for generating achemical structure using a chemical structure generation model, theapparatus comprising: a memory configured to store at least one program;and a processor configured to execute the at least one program to:obtain a random latent variable on a latent map of the chemicalstructure generation model; generate a descriptor by decoding the randomlatent variable using a decoder of the chemical structure generationmodel; and generate the chemical structure corresponding to thedescriptor.
 18. A non-transitory computer-readable recording mediumhaving recorded thereon a program that, when executed by a processor,causes the processor to: receive a first descriptor of a first chemicalstructure; encode the first descriptor into a latent variable using anencoder of a chemical structure generation model; generate a seconddescriptor by decoding the latent variable using a decoder of thechemical structure generation model; and generate a second chemicalstructure corresponding to the second descriptor.
 19. A non-transitorycomputer-readable recording medium having recorded thereon a programthat, when executed by a processor, causes the processor to: obtain arandom latent variable on a latent map of a chemical structuregeneration model; generate a descriptor by decoding the random latentvariable using a decoder of the chemical structure generation model; andgenerate a chemical structure corresponding to the descriptor.